home *** CD-ROM | disk | FTP | other *** search
- package sun.awt.motif;
-
- import java.awt.AWTError;
- import java.awt.Button;
- import java.awt.Canvas;
- import java.awt.Checkbox;
- import java.awt.CheckboxMenuItem;
- import java.awt.Choice;
- import java.awt.Component;
- import java.awt.Dialog;
- import java.awt.Dimension;
- import java.awt.FileDialog;
- import java.awt.Font;
- import java.awt.FontMetrics;
- import java.awt.Frame;
- import java.awt.Image;
- import java.awt.Label;
- import java.awt.List;
- import java.awt.Menu;
- import java.awt.MenuBar;
- import java.awt.MenuItem;
- import java.awt.Panel;
- import java.awt.Scrollbar;
- import java.awt.TextArea;
- import java.awt.TextField;
- import java.awt.Toolkit;
- import java.awt.Window;
- import java.awt.image.ColorModel;
- import java.awt.image.ImageObserver;
- import java.awt.image.ImageProducer;
- import java.awt.peer.ButtonPeer;
- import java.awt.peer.CanvasPeer;
- import java.awt.peer.CheckboxMenuItemPeer;
- import java.awt.peer.CheckboxPeer;
- import java.awt.peer.ChoicePeer;
- import java.awt.peer.DialogPeer;
- import java.awt.peer.FileDialogPeer;
- import java.awt.peer.FramePeer;
- import java.awt.peer.LabelPeer;
- import java.awt.peer.ListPeer;
- import java.awt.peer.MenuBarPeer;
- import java.awt.peer.MenuItemPeer;
- import java.awt.peer.MenuPeer;
- import java.awt.peer.PanelPeer;
- import java.awt.peer.ScrollbarPeer;
- import java.awt.peer.TextAreaPeer;
- import java.awt.peer.TextFieldPeer;
- import java.awt.peer.WindowPeer;
- import java.net.URL;
- import java.util.Hashtable;
- import sun.awt.image.ByteArrayImageSource;
- import sun.awt.image.FileImageSource;
- import sun.awt.image.ImageRepresentation;
- import sun.awt.image.URLImageSource;
-
- public class MToolkit extends Toolkit implements Runnable {
- static ColorModel screenmodel;
- static Hashtable imgHash;
-
- public MToolkit() {
- this.init();
- (new Thread(this, "AWT-Motif")).start();
- }
-
- public native void init();
-
- public native void run();
-
- public ButtonPeer createButton(Button var1) {
- return new MButtonPeer(var1);
- }
-
- public TextFieldPeer createTextField(TextField var1) {
- return new MTextFieldPeer(var1);
- }
-
- public LabelPeer createLabel(Label var1) {
- return new MLabelPeer(var1);
- }
-
- public ListPeer createList(List var1) {
- return new MListPeer(var1);
- }
-
- public CheckboxPeer createCheckbox(Checkbox var1) {
- return new MCheckboxPeer(var1);
- }
-
- public ScrollbarPeer createScrollbar(Scrollbar var1) {
- return new MScrollbarPeer(var1);
- }
-
- public TextAreaPeer createTextArea(TextArea var1) {
- return new MTextAreaPeer(var1);
- }
-
- public ChoicePeer createChoice(Choice var1) {
- return new MTinyChoicePeer(var1);
- }
-
- public FramePeer createFrame(Frame var1) {
- return new MFramePeer(var1);
- }
-
- public CanvasPeer createCanvas(Canvas var1) {
- return new MCanvasPeer(var1);
- }
-
- public PanelPeer createPanel(Panel var1) {
- return new MPanelPeer(var1);
- }
-
- public WindowPeer createWindow(Window var1) {
- if (var1 != null && ((Component)var1).getParent() != null && ((Component)var1).getParent().getPeer() == null) {
- ((Component)var1).getParent().addNotify();
- }
-
- return new MWindowPeer(var1);
- }
-
- public DialogPeer createDialog(Dialog var1) {
- if (var1 != null && ((Component)var1).getParent() != null && ((Component)var1).getParent().getPeer() == null) {
- ((Component)var1).getParent().addNotify();
- }
-
- return new MDialogPeer(var1);
- }
-
- public FileDialogPeer createFileDialog(FileDialog var1) {
- throw new AWTError("FileDialog is unimplemented.");
- }
-
- public MenuBarPeer createMenuBar(MenuBar var1) {
- return new MMenuBarPeer(var1);
- }
-
- public MenuPeer createMenu(Menu var1) {
- return new MMenuPeer(var1);
- }
-
- public MenuItemPeer createMenuItem(MenuItem var1) {
- return new MMenuItemPeer(var1);
- }
-
- public CheckboxMenuItemPeer createCheckboxMenuItem(CheckboxMenuItem var1) {
- return new MCheckboxMenuItemPeer(var1);
- }
-
- public Dimension getScreenSize() {
- return new Dimension(this.getScreenWidth(), this.getScreenHeight());
- }
-
- static native ColorModel makeColorModel();
-
- static ColorModel getStaticColorModel() {
- if (screenmodel == null) {
- screenmodel = makeColorModel();
- }
-
- return screenmodel;
- }
-
- public ColorModel getColorModel() {
- return getStaticColorModel();
- }
-
- public native int getScreenResolution();
-
- native int getScreenWidth();
-
- native int getScreenHeight();
-
- public String[] getFontList() {
- String[] var1 = new String[]{"Dialog", "Helvetica", "TimesRoman", "Courier", "Symbol"};
- return var1;
- }
-
- public FontMetrics getFontMetrics(Font var1) {
- return X11FontMetrics.getFontMetrics(var1);
- }
-
- public native void sync();
-
- static synchronized Image getImageFromHash(Toolkit var0, URL var1) {
- System.getSecurityManager().checkURLConnect(var1);
- Image var2 = (Image)imgHash.get(var1);
- if (var2 == null) {
- try {
- var2 = var0.createImage(new URLImageSource(var1));
- imgHash.put(var1, var2);
- } catch (Exception var3) {
- }
- }
-
- return var2;
- }
-
- static synchronized Image getImageFromHash(Toolkit var0, String var1) {
- System.getSecurityManager().checkRead(var1);
- Image var2 = (Image)imgHash.get(var1);
- if (var2 == null) {
- try {
- var2 = var0.createImage(new FileImageSource(var1));
- imgHash.put(var1, var2);
- } catch (Exception var3) {
- }
- }
-
- return var2;
- }
-
- public Image getImage(String var1) {
- return getImageFromHash(this, (String)var1);
- }
-
- public Image getImage(URL var1) {
- return getImageFromHash(this, (URL)var1);
- }
-
- static boolean prepareScrImage(Image var0, int var1, int var2, ImageObserver var3) {
- if (var1 != 0 && var2 != 0) {
- X11Image var4 = (X11Image)var0;
- if (((sun.awt.image.Image)var4).hasError()) {
- if (var3 != null) {
- var3.imageUpdate(var0, 192, -1, -1, -1, -1);
- }
-
- return false;
- } else {
- if (var1 < 0) {
- var1 = -1;
- }
-
- if (var2 < 0) {
- var2 = -1;
- }
-
- ImageRepresentation var5 = var4.getImageRep(var1, var2);
- return var5.prepare(var3);
- }
- } else {
- return true;
- }
- }
-
- static int checkScrImage(Image var0, int var1, int var2, ImageObserver var3) {
- X11Image var4 = (X11Image)var0;
- int var5;
- if (var1 != 0 && var2 != 0) {
- if (var1 < 0) {
- var1 = -1;
- }
-
- if (var2 < 0) {
- var2 = -1;
- }
-
- var5 = var4.getImageRep(var1, var2).check(var3);
- } else {
- var5 = 32;
- }
-
- return ((sun.awt.image.Image)var4).check(var3) | var5;
- }
-
- public int checkImage(Image var1, int var2, int var3, ImageObserver var4) {
- return checkScrImage(var1, var2, var3, var4);
- }
-
- public boolean prepareImage(Image var1, int var2, int var3, ImageObserver var4) {
- return prepareScrImage(var1, var2, var3, var4);
- }
-
- public Image createImage(ImageProducer var1) {
- return new X11Image(var1);
- }
-
- public Image createImage(byte[] var1, int var2, int var3) {
- return this.createImage(new ByteArrayImageSource(var1, var2, var3));
- }
-
- static {
- SecurityManager.enablePrivilege("UniversalLinkAccess");
- System.loadLibrary("awt");
- imgHash = new Hashtable();
- }
- }
-